import path from "path"
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'

// const url = 'http://123.57.18.66:8080';
const url = 'http://123.57.18.66:8080';
//const url = 'http://123.57.18.66:8005';


export default defineConfig({
    plugins: [vue()],
    base: "./",
    resolve: {
        alias: {
            '@': path.resolve(__dirname, 'src'),
        },
    },
    // 全局样式
    css: {
        preprocessorOptions: {
            scss: {
                additionalData: `@use "@/styles/element/index.scss" as *;`,
            },
        }
    },

    // 反向代理
    // server: {
    //     hmr: true,
    //     headers: {
    //         'Access-Control-Allow-Origin': '*',
    //     },
    //     disableHostCheck: true,
    //     port: 3000,
    //     proxy: {
    //         '/tansci': {
    //             target: url,
    //             changeOrigin: true,
    //             pathRewrite: {
    //                 '^/tansci': '/tansci'
    //             }
    //         }
    //     }

    // },

    build: {
        chunkSizeWarningLimit: 1500, // 调整包的大小
        rollupOptions: {
          output: {
            // 最小化拆分包
            manualChunks(id) {
              if (id.includes('node_modules')) {
                return id.toString().split('node_modules/')[1].split('/')[0].toString()
              }
            },
            // 用于从入口点创建的块的打包输出格式[name]表示文件名,[hash]表示该文件内容hash值
            entryFileNames: 'assets/js/[name].[hash].js', // 用于命名代码拆分时创建的共享块的输出命名
            chunkFileNames: 'assets/js/[name].[hash].js', // 用于输出静态资源的命名，[ext]表示文件扩展名
            assetFileNames: 'assets/[ext]/[name].[hash].[ext]'
          }
        }
      },

})
